Firebase Authentication হল একটি শক্তিশালী টুল যা ডেভেলপারদের বিভিন্ন ধরনের ইউজার অথেন্টিকেশন ব্যবস্থা (যেমন ইমেইল-পাসওয়ার্ড, গুগল, ফেসবুক, টুইটার, ইত্যাদি) সহজেই অ্যাপ্লিকেশনে অন্তর্ভুক্ত করার সুযোগ দেয়। Cordova অ্যাপে Firebase Authentication ইন্টিগ্রেট করতে আপনাকে Firebase SDK এবং কিছু কনফিগারেশন স্টেপ অনুসরণ করতে হবে।
১. প্রথমে Firebase প্রজেক্ট তৈরি করুন
- Firebase Console এ যান: https://console.firebase.google.com/
- নতুন একটি প্রজেক্ট তৈরি করুন এবং প্রজেক্টের জন্য একটি নাম নির্বাচন করুন।
- Firebase Authentication সক্ষম করুন:
- Firebase Console এ "Authentication" সেকশনে যান।
- "Sign-in method" ট্যাব এ গিয়ে যে সাইন-ইন পদ্ধতি (যেমন ইমেইল/পাসওয়ার্ড, গুগল, ফেসবুক ইত্যাদি) ব্যবহার করতে চান তা সিলেক্ট করুন এবং সেটি চালু করুন।
২. Cordova প্রজেক্ট সেটআপ করুন
প্রথমে একটি Cordova প্রজেক্ট তৈরি করতে হবে (যদি আপনি ইতিমধ্যে না করে থাকেন)।
cordova create myApp
cd myApp
cordova platform add android৩. Firebase SDK ইন্সটল করুন
Firebase Authentication ব্যবহার করতে আপনাকে Firebase SDK ইন্সটল করতে হবে।
Cordova Plugin for Firebase:
Firebase Authentication ব্যবহার করার জন্য আপনাকে cordova-plugin-firebasex প্লাগইনটি ইন্সটল করতে হবে।cordova plugin add cordova-plugin-firebasexFirebase SDK ইন্সটল করতে npm ব্যবহার করতে পারেন:
npm install --save firebase
৪. Firebase কনফিগারেশন ফাইল
Firebase Authentication ব্যবহার করার জন্য Firebase Console থেকে আপনার প্রজেক্টের config তথ্য (API key, Auth Domain, Database URL, Project ID, ইত্যাদি) নিতে হবে।
Firebase Console থেকে এই তথ্য পেতে:
- Firebase Console এ যান।
- আপনার প্রজেক্ট সিলেক্ট করুন।
- "Project Settings" থেকে আপনার Firebase Config কপি করুন।
এরপর, এই কনফিগারেশন কোডটি আপনার Cordova অ্যাপের JavaScript ফাইলে যুক্ত করুন।
// Firebase কনফিগারেশন
var firebaseConfig = {
apiKey: "YOUR_API_KEY",
authDomain: "YOUR_AUTH_DOMAIN",
databaseURL: "YOUR_DATABASE_URL",
projectId: "YOUR_PROJECT_ID",
storageBucket: "YOUR_STORAGE_BUCKET",
messagingSenderId: "YOUR_MESSAGING_SENDER_ID",
appId: "YOUR_APP_ID"
};
// Firebase Initialize করুন
firebase.initializeApp(firebaseConfig);৫. Firebase Authentication ব্যবহার করা
Firebase Authentication দিয়ে ইমেইল-পাসওয়ার্ড এবং সোশ্যাল সাইন-ইন (যেমন গুগল, ফেসবুক) করতে পারবেন।
ইমেইল-পাসওয়ার্ড দিয়ে লগইন এবং রেজিস্ট্রেশন
রেজিস্ট্রেশন:
function registerUser(email, password) {
firebase.auth().createUserWithEmailAndPassword(email, password)
.then((userCredential) => {
var user = userCredential.user;
console.log("User registered: ", user);
})
.catch((error) => {
var errorCode = error.code;
var errorMessage = error.message;
console.log("Error: " + errorMessage);
});
}লগইন:
function loginUser(email, password) {
firebase.auth().signInWithEmailAndPassword(email, password)
.then((userCredential) => {
var user = userCredential.user;
console.log("User logged in: ", user);
})
.catch((error) => {
var errorCode = error.code;
var errorMessage = error.message;
console.log("Error: " + errorMessage);
});
}গুগল সাইন-ইন
Google Sign-In সেটআপ করার জন্য Google Sign-In প্লাগইন যুক্ত করতে হবে।
cordova plugin add cordova-plugin-googleplus --variable REVERSED_CLIENT_ID=YOUR_REVERSED_CLIENT_IDএছাড়া Firebase Console থেকে Google Sign-In সক্রিয় করতে হবে।
function googleSignIn() {
var provider = new firebase.auth.GoogleAuthProvider();
firebase.auth().signInWithPopup(provider)
.then((result) => {
var user = result.user;
console.log("Google User: ", user);
})
.catch((error) => {
var errorCode = error.code;
var errorMessage = error.message;
console.log("Error: " + errorMessage);
});
}৬. অথেন্টিকেশন স্টেট ট্র্যাকিং
Firebase Authentication দিয়ে ইউজারের সাইন ইন বা সাইন আউট স্টেট ট্র্যাক করা যেতে পারে। যখন ইউজার সাইন ইন করেন, তখন আপনি তাদের ডেটা পেতে পারেন।
firebase.auth().onAuthStateChanged(function(user) {
if (user) {
console.log("User is signed in:", user);
} else {
console.log("No user is signed in.");
}
});৭. লগআউট
Firebase Authentication দিয়ে ইউজারের লগআউট করতে:
function logoutUser() {
firebase.auth().signOut().then(() => {
console.log("User signed out.");
}).catch((error) => {
console.log("Error signing out: ", error);
});
}৮. ফায়ারবেস Authentication টেস্টিং
Firebase Authentication ইন্টিগ্রেট করার পর, আপনাকে বিভিন্ন ভাবে আপনার অ্যাপ টেস্ট করতে হবে:
- ইমেইল-পাসওয়ার্ড লগইন এবং রেজিস্ট্রেশন প্রক্রিয়া।
- গুগল বা ফেসবুক সাইন-ইন কার্যকারিতা।
- সাইন-আউট ফাংশনালিটি।
- ইউজারের লগইন এবং লগআউট স্টেট ট্র্যাকিং।
সারাংশ
Firebase Authentication Cordova অ্যাপ্লিকেশনে ব্যবহার করে আপনি সহজে বিভিন্ন ধরনের অথেন্টিকেশন সিস্টেম (যেমন ইমেইল-পাসওয়ার্ড, গুগল সাইন-ইন, ফেসবুক সাইন-ইন) ইন্টিগ্রেট করতে পারেন। Firebase SDK, Firebase Console কনফিগারেশন, এবং Cordova প্লাগইন ব্যবহারের মাধ্যমে আপনি আপনার অ্যাপে নিরাপদ অথেন্টিকেশন প্রক্রিয়া স্থাপন করতে পারবেন।
Read more